Dynamic subchannel and bit allocation in a multiuser-MIMO/OFDMA system

ABSTRACT

A resource allocation method in a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system. In the multiuser-MIMO/OFDMA system feedback information is received from terminals. A channel gain and a transmission rate for each user are determined using the feedback information. An average channel gain for each user is computed according to the channel gain. The average number of bits for each user is determined according to the average channel gain. The number of subchannels for each user is computed according to the average number of bits for each user. At least one subchannel is allocated to each user according to the number of subchannels for each user. A modulation scheme for each of the at least one subchannel is determined. The resource allocation method adaptively allocates subchannels and bits according to channel environment, thereby considerably improving frequency use efficiency as well as a power gain.

PRIORITY

This application claims priority to an application entitled “Dynamic Subchannel and Bit Allocation in a Multiuser-MIMO/OFDMA System” filed in the Korean Intellectual Property Office on May 17, 2004 and assigned Serial No. 2004-34960, the contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to a mobile communication system, and more particularly to a scheme for optimizing subchannel and bit allocation in a multicarrier-based mobile communication system.

2. Description of the Related Art

A multiple-input multiple-output (MIMO) system in the downlink can be broken down to multiple parallel independent single-user MIMO systems. Further, when the orthogonal frequency division multiple access (OFDMA) technology is applied to the downlink MIMO system, a multiuser-MIMO/OFDMA system is provided. In this system, data streams for users are multiplexed over space and frequency, and thus the users receive the spatially multiplexed data streams.

FIG. 1 is a conceptual diagram illustrating subchannels of a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system. In the multiuser-MIMO/OFDMA system as illustrated in FIG. 1, there are space division multiple access (SDMA) subchannels in which each user occupies several MIMO subchannels, for each orthogonal frequency division multiplexing (OFDM) subcarrier. The users generate MIMO subchannels using the MIMO technologies, and transmit data through the generated MIMO subchannels. A more important feature of a multiuser-MIMO/OFDMA system design is that SDMA channels are allocated to users, and bits are loaded to the MIMO subchannels allocated to a single user for adaptive modulation.

For subchannel and bit allocation, optimal and suboptimal schemes have been proposed to minimize the overall transmission power under the data rate constraint or to maximize a data rate under the transmission power constraint. For a multiuser-multiple-input single-output (MISO)/OFDM system, a bit allocation scheme for maximizing a signal-to-noise ratio (SNR) has been proposed. More specifically, a suboptimal scheme that takes into account interference and a data rate in a multiuser-MISO/OFDMA system has been proposed. However, when the data rate constraint is present, there is a drawback that the suboptimal scheme can be applied only to an OFDMA system.

SUMMARY OF THE INVENTION

Accordingly, the present invention has been designed to solve the above and other problems occurring in the prior art. Therefore, it is an aspect of the present invention to provide a subchannel and bit allocation method for efficiently allocating subchannels in an orthogonal frequency division multiple access (OFDMA) system using multiple antennas.

It is another aspect of the present invention to provide a subchannel and bit allocation method for improving a power gain, and frequency use efficiency by performing adaptive modulation according to channel state.

The above and other aspects of the present invention can be achieved by a resource allocation method in a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system including a base station for transmitting signals through a plurality of transmitter antennas, and a plurality of terminals for receiving the signals through receiver antennas. The resource allocation method includes determining a number of subchannels for each user according to a channel environment; and allocating a modulating scheme for each subchannel according to the determined number of subchannels.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects and advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a conceptual diagram illustrating subchannels of a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system;

FIG. 2 is a block diagram illustrating a multiuser-MIMO/OFDMA base station to which a subchannel and bit allocation method in accordance with the present invention is applied; and

FIG. 3 is a flow chart illustrating the subchannel and bit allocation method in accordance with the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A subchannel and bit allocation method in accordance with preferred embodiments of the present invention will be described in detail herein below with reference to the accompanying drawings. More specifically, the present invention provides an optimal scheme for subchannel and bit allocation, and a suboptimal scheme for separately performing the subchannel and bit allocation.

FIG. 2 is a block diagram illustrating a multiuser-multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) base station to which a subchannel and bit allocation method in accordance with the present invention is applied. Referring to FIG. 2, the multiuser-MIMO/OFDMA base station includes a modulation unit 21, a precoding unit 23, and an OFDMA transmission unit 27. The modulation unit 21 includes a plurality of adaptive modulators 21 a for processing input data of multiple users. The precoding unit 23 includes a plurality of precoders 23 a for preceding signals output from the adaptive modulators 21 a, and a plurality of adders 25 for adding outputs of the precoders 23 a. The OFDMA transmission unit 27 includes a plurality of Inverse Fast Fourier Transform (IFFT) and parallel-to-serial (P/S) modules 27 a, and a plurality of cyclic prefix (CP) insertion modules 27 b for inserting CPs into output signals of the IFFT and P/S modules 27 a.

The multiuser-MIMO/OFDMA base station further includes a subchannel and bit allocation module 29 for generating information necessary for subchannel and bit allocation using feedback information received from terminals, and providing the generated information to the modulation unit 21 and the precoding unit 23.

The above-described base station transmits signals of N subcarriers through N_(l) transmitter antennas 28. It is assumed that the channel is flat fading in the present invention. The base station receives downlink channel information from all K user terminals, allocates a set of subchannels to each user terminal, and determines the number of bits to be transmitted through each channel.

The subchannel and bit allocation information is transmitted to user terminals through a separate control channel. When each user terminal has N_(r) receiver antennas and N_(l)=M·N_(R), where M is an integer greater than or equal to 2, M different user terminals occupy M SDMA subchannels per subcarrier, and each user terminal receives N_(R) spatially multiplexed bit streams through MIMO processing. The bit streams are referred to as MIMO subchannels. Ω_(n) denotes an indicator set for M user terminals occupying M SDMA subchannels of the n-th subcarrier. Ω_(n) consists of M integers chosen from {1, 2, . . . ,K}. When an N_(R)×1 vector is defined by X_(n,k), $X_{n,k} = {\begin{Bmatrix} {{{information}\quad{symbol}\quad{vector}},{{{if}\quad k} \in \Omega_{n}}} \\ {0,{otherwise},} \end{Bmatrix}.}$

When X_(n,k) is multiplied by an N_(T)×N_(R) processing matrix, S_(n,k)=F_(n,k)X_(n,k) is yielded and $\sum\limits_{k \in \Omega_{n}}S_{n,k}$ is transmitted through the n-th subcarrier. However, when X_(n,k)=0, such multiplication is unnecessary.

When the matrix F_(n,k) is properly chosen, the multiuser interference in $\sum\limits_{k \in \Omega_{n}}S_{n,k}$ can be eliminated, and S_(n,k) and kεΩ_(n) can be recovered at a receiver. The matrix F_(n,k) provides M SDMA subchannels associated with single-user MIMO subchannels, such that each user terminal can spatially multiplex N_(R) data streams.

A transmitter transmits data to K user terminals through all M·N·N_(R) subchannels under the following conditions:

Condition 1: M SDMA subchannels per subcarrier should be allocated to M different user terminals.

Condition 2: All NR MIMO subchannels associated with one SDMA subchannel should be allocated to a single user terminal occupying the SDMA subchannel.

When M=1, the multiuser-MIMO/OFDMA system is switched to a single-user-MIMO/OFDMA system in which each subcarrier with N_(R) MIMO subchannels is occupied by a single user terminal. In this case, N_(T)=N_(R), F_(n,k)=E_(n,k), and Condition 1 is unnecessary.

Another form of the multiuser-MIMO/OFDMA system is a multiuser-multiple-input single-output (MISO)/OFDMA system having a single receiver antenna, where N_(R)=1. In this case, M=N_(T), F_(n,k)={overscore (N)}_(n,k), and Condition 2 is unnecessary.

An optimal subchannel and bit allocation scheme based on integer programming (IP) in accordance with the present invention will be described herein below. For convenience, it is assumed that the number of SDMA subchannels for each OFDM subcarrier is 2, i.e., M=2.

A data rate R_(k) of the k-th user terminal can be expressed as shown in Equation (1). $\begin{matrix} \begin{matrix} {R_{k} = {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,l,p,c} \right)}}}}}}} \\ {{\overset{\Delta}{=}{\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{c_{k}\left( {n,l} \right)}}}},} \end{matrix} & (1) \end{matrix}$

-   -   where         ${{c_{k}\left( {n,l} \right)} = {\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{c \cdot \rho_{({n,l,p,c})}}}}},$         and C is the maximum number of bits per symbol that can be         loaded to one subchannel.

If the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier, and c bits are allocated to the l-th MIMO subchannel associated with an SDMA subchannel of the k-th user terminal, ρ_(k)(n,l,p,c)=1. Otherwise, ρ_(k)(n,l,p,c)=0.

In Equation (1), c_(k)(n,l) denotes the number of bits allocated to the l-th MIMO subchannel of the k-th user terminal when the k-th user terminal occupies one of the SDMA subchannels of the n-th subcarrier. The transmission power allocated to the k-th user terminal can be expressed as shown in Equation (2). $\begin{matrix} {P_{k} = {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\frac{f_{k}(c)}{\alpha_{k}^{2}\left( {n,l,p} \right)} \cdot {\rho_{k}\left( {n,l,p,c} \right)}}}}}}} & (2) \end{matrix}$

In Equation (2), f_(k)(c) is the received power required to stably receive c bits per symbol. α_(k)(n,l,p) is an equivalent channel gain of the l-th MIMO subchannel of the k-th user terminal when the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier.

It is assumed that the MIMO subchannels are ordered according to their equivalent channel gains without loss of generality, i.e., |α_(k)(n,1,p)|≧|α_(k)(n,2,p)|, ∀k,n,p.

The optimal subchannel and bit allocation problem for minimizing the total transmission power required to transmit data at a rate of {R₁, . . . , R_(K)} can be formulated as shown in Equation (3). $\begin{matrix} {{P_{T} = {\sum\limits_{k = 1}^{K}{\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\frac{f_{k}(c)}{\alpha_{k}^{2}\left( {n,l,p} \right)} \cdot {\rho_{k}\left( {n,l,p,c} \right)}}}}}}}}{{Constraints}\text{:}}{{\rho_{k}\left( {n,l,p,c} \right)} \in \left\{ {0,1} \right\}}{{R_{k} = {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,l,p,c} \right)}}}}}}},{\forall k}}{{0 \leq {\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,l,p,c} \right)}}} \leq 1},{\forall k},n,l,p}{{0 \leq {\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} \leq 2},{\forall n},l}{{0 \leq {\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}} \leq {N_{R}{\delta_{k}\left( {n,p} \right)}}},{\forall k},n,p}{{{\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}} = 2},{\forall n}}{{{\delta_{k}\left( {n,p} \right)} = {\delta_{p}\left( {n,k} \right)}},{\forall k},n,p}{{{\delta_{k}\left( {n,p} \right)} \in \left\{ {0,1} \right\}},{\forall k},n,p}} & (3) \end{matrix}$

In Equation (3), P_(T) denotes an intensity of the total transmission power. If the k-th and p-th user terminals occupy two SDMA subchannels associated with the n-th subcarrier, δ_(k)(n,p)=1. Otherwise, δ_(k)(n,p)=0.

In Equation (3), an inequality ${0 \leq {\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}} \leq 1},{\forall k},n,l,p$ is needed because c bits (cε{0, . . . , C}) are allocated to each MIMO channel. ${0 \leq {\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} \leq 2},{\forall n},l,{0 \leq {\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}} \leq {N_{R}{\delta_{k}\left( {n,p} \right)}}},{\forall k},n,p,{{\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}} = 2},{\forall n},{{\delta_{k}\left( {n,p} \right)} = {\delta_{p}\left( {n,k} \right)}},{\forall k},n,p,$ and δ_(k)(n,p)ε{0,1}; ∀k,n,p are included to satisfy Conditions 1 and 2. An optimal solution of the problem is obtained by IP using binary variables.

When M=1 (single-user-MISO/OFDMA), one of the user indices p and the corresponding summations can be removed from Equation (3). As a result, a condition of δ_(k)(n,p)=δ_(p)(n,k), ∀k,n,p is discarded. Furthermore, in this case, an inequality ${0 \leq {\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} \leq 2},{\forall n},l$ required to meet only Condition 1 is discarded.

When N_(R)=1 (multiuser-MISO/OFDMA), the index l for MIMO subchannels and the corresponding summations can be removed from Equation (3). In this case, ${0 \leq {\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}} \leq {N_{R}{\delta_{k}\left( {n,p} \right)}}},{\forall k},n,p$ of Equation (3) becomes ${0 \leq {\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,p,c} \right)}} \leq {\delta_{k}\left( {n,p} \right)}},{\forall k},n,p$ including ${0 \leq {\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}} \leq 1},{\forall k},n,l,p$ of Equation (3). Accordingly, ${0 \leq {\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}} \leq 1},{\forall k},n,l,p$ can be discarded.

In the case of the multiuser-MISO/OFDMA system (for convenience, M=2), a single MIMO subchannel associated with a single SDMA subchannel exists. Accordingly, a MIMO subchannel index l can be removed, and only Condition 1 needs to be satisfied. The optimization problem in Equation (3) can be simplified as shown in Equation (4). $\begin{matrix} {{P_{T} = {\sum\limits_{k = 1}^{K}\left\lbrack {\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\frac{f_{k}(c)}{\alpha_{k}^{2}\left( {n,p} \right)} \cdot {\rho_{k}\left( {n,p,c} \right)}}}}} \right\rbrack}}{{\rho_{k}\left( {n,p,c} \right)} \in \left\{ {0,1} \right\}}{{R_{k} = {{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,p,c} \right)}}}}} = {\sum\limits_{n = 1}^{N}{c_{k}(n)}}}},{\forall k}}{{0 \leq {\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,p,c} \right)}}}} \leq 2},{\forall n}}{{0 \leq {\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,p,c} \right)}} \leq {\delta_{k}\left( {n,p} \right)}},{\forall k},n,p}{{{\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}} = 2},{\forall n}}{{{\delta_{k}\left( {n,p} \right)} = {\delta_{p}\left( {n,k} \right)}},{\forall k},n,p}{{{\delta_{k}\left( {n,p} \right)} \in \left\{ {0,1} \right\}},{\forall k},n,p}} & (4) \end{matrix}$

In Equation (4), if the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier, and c bits are allocated to an MIMO subchannel associated with an SDMA subchannel of the k-th user terminal, ρ_(k)(n,l,c)=1. Otherwise, ρ_(k)(n,l,c)=0.

In Equation (4), α_(k)(n, p) is an equivalent channel gain of the k-th user terminal when the k-th and p-th user terminals occupy two SDMA subchannels of the n-th subcarrier. In the data rate constraint of ${R_{k} = {{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,p,c} \right)}}}}} = {\sum\limits_{n = 1}^{N}{c_{k}(n)}}}},{\forall k},{{c_{k}(n)} = {\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,p,c} \right)}}}}}$ denotes the number of bits allocated to an MIMO subchannel of the k-th user terminal when the k-th user terminal occupies one of the SDMA subchannels of the n-th subcarrier.

In the single-user MIMO/OFDMA system, only Condition 2 should be satisfied because there is one SDMA subchannel per subcarrier. A user index p can be removed.

Accordingly, the optimization problem can be expressed as shown in Equation (5). $\begin{matrix} {{P_{T} = {\sum\limits_{k = 1}^{K}\left\lbrack {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{\frac{f_{k}(c)}{\alpha_{k}^{2}\left( {n,l} \right)} \cdot {\rho_{k}\left( {n,l,c} \right)}}}}} \right\rbrack}}{{Constraints}\text{:}}{{\rho_{k}\left( {n,l,c} \right)} \in \left\{ {0,1} \right\}}{{R_{k} = {{\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,l,c} \right)}}}}} = {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{{\hat{c}}_{k}\left( {n,l} \right)}}}}},{\forall k}}{{0 \leq {\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,c} \right)}} \leq 1},{\forall k},n,l}{{0 \leq {\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,c} \right)}}} \leq {N_{R}{\delta_{k}(n)}}},{\forall k},n}{{{\sum\limits_{k = 1}^{K}{\delta_{k}(n)}} = 1},{\forall n}}{{{\delta_{k}(n)} \in \left\{ {0,1} \right\}},{\forall k},n}} & (5) \end{matrix}$

In Equation (5), if the k-th user terminal occupies one SDMA subchannel of the n-th subcarrier, c bits are allocated to the l-th MIMO subchannel associated with the SDMA subchannel of the k-th user terminal, ρ_(k)(n,l,c)=1. Otherwise, ρ_(k)(n,l,c)=0.

In Equation (5) and its constraint ${R_{k} = {{\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,l,c} \right)}}}}} = {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{{\hat{c}}_{k}\left( {n,l} \right)}}}}},{\forall k},{\alpha_{k}\left( {n,l} \right)}$ and ${c_{k}\left( {n,l} \right)} = {\sum\limits_{c = 1}^{C}{c \cdot {\rho_{k}\left( {n,l,c} \right)}}}$ denote an equivalent channel gain and the number of bits associated with the l-th MIMO subchannel of the k-th user terminal, respectively, when the k-th user terminal occupies an SDMA subchannel of the n-th subcarrier. If the k-th user terminal occupies an SDMA subchannel of the n-th subcarrier, a binary variable δ_(k)(n)=1. Otherwise, δ_(k)(n)=0.

Conventionally, IP requires an exponential time algorithm whose complexity rapidly increases with the number of constraints and variables.

Now, the behavior of the optimal IP algorithm is examined through computer simulation, and several observations are performed in relation to bit allocation.

The optimal IP algorithm was simulated using multiuser-MIMO/OFDMA, multiuser-MISO/OFDMA, and single-user-MIMO/OFDMA systems. Table 1 describes system parameters used in the simulation. TABLE 1 Multiuser- Multiuser- Single-user- MIMO/OFDMA MISO/OFDMA MIMO/OFDMA N_(T) 4 2 2 N_(R) 2 1 2 M 2 2 1 # of FFT (N) 64 64 64 Total # of 256 128 128 subchannels # of users (K) 4  # of max. bits (C) 12 Required BER   10⁻⁴ Channel 8-tap frequency selective Rayleigh fading chan- nels with exponentially decaying power profiles were assumed. The channel parameters were fixed during one frame period. The average channel magnitudes of the different users were generally unequal and the difference, denoted by γ, between the strongest and weakest channels of the four users was either zero or 30 dB.

For the multiuser-MIMO/OFDMA system, Table 2 describes the number of subchannels allocated to each user terminal and the number of bits allocated to each subchannel where R₁=R₂=R₃=R₄=256. TABLE 2 γ(dB) MIMO subchannel group User k # of assigned MIMO subchannels # of MIMO subchannels with c_(k)(n, l) = i bits i = 2 i = 4 i = 6 i = 8 i = 10 ${Ratio}\quad\frac{\alpha_{k}^{2}}{{\overset{\_}{\alpha}}_{k}^{2}}$ 0 l = 1 1 34  0  13  21   0  0 0.77 2 28  0   0  28   0  0 0.87 3 32  0   9  23   0  0 0.73 4 34  0  15  19   0  0 0.83 Total 128  0  37  91   0  0 l = 2 1 30  21   9   0   0  0 0.58 2 27  10  17   0   0  0 0.50 3 31  21  10   0   0  0 0.57 4 32  23   9   0   0  0 0.49 Total 120  75  45   0   0  0 30 l = 1 1 63  31  32   0   0  0 0.88 2 28  0   1  27   0  0 0.79 3 20  0   0   4  16  0 0.74 4 17  0   0   0  10  7 0.72 Total 128  31  33  31  26  7 l = 2 1 33  33   0   0   0  0 0.42 2 25  6  18   1   0  0 0.46 3 20  0   8  12   0  0 0.57 4 17  0   0  15   2  0 0.56 Total 95  39  26  28   2  0

Because equivalent channel gains of two MIMO subchannels (N_(R)=2), {α_(k)(n,l,p), l=1,2}, are different in most cases, the results are sorted into two groups. The first group includes resulting values associated with an MIMO subchannel with a larger equivalent channel gain α_(k)(n,l,p), and the second group includes the rest. In relation to channels with the same channel gain (γ=0), subchannels are almost equivalently distributed to user terminals. That is, 28 to 34 subchannels of Group 1 are allocated to each user, and 27 to 32 subchannels of Group 2 are allocated to each user. Where γ=30 dB, a large number of subchannels were allocated to User Terminal 1 with the lowest average channel magnitude, and a small number of subchannels were allocated to User Terminal 4 with the highest average channel magnitude. This occurred because R₁=R₂=R₃=R₄.

It is important to observe that the optimal IP often loaded the same number of bits (or constellation size) for subchannels allocated to one user. This indicates that c_(k)(n,l) in Equation (1) tends to be the same regardless of n. More specifically, c_(k)(l) indicates the dominant constellation.

When γ=0 dB, c₁(1)=6 because 21 out of 34 MIMO subchannels were loaded 6 bits. The remaining 13 subchannels were loaded 4 bits. Accordingly, the dominant constellation for each pair of (k,l) can be found.

When the same experiment are repeated 1,000 times as shown in Table 3, it was observed that about 70% of c_(k)(n,l) were equal to their corresponding dominant constellation c_(k)(l), and almost all c_(k)(n,l) were in the neighborhood of c_(k)(l). TABLE 3 γ = γ = 0 dB 30 dB $\Pr\quad\left( {{c_{k}\left( {n,l} \right)} = {{{c_{k}(l)}❘{\sum\limits_{p = {{1p} \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} = 1}} \right)$ 0.69 0.74 $\begin{matrix} {{\Pr\quad\left( {{c_{k}\left( {n,l} \right)} = {{{c_{k}(l)}❘{\sum\limits_{p = {{1p} \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} = 1}} \right)} +} \\ {\Pr\left( {{c_{k}\left( {n,l} \right)} = {{{{c_{k}(l)} \pm 2}❘{\sum\limits_{p = {{1p} \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} = 1}} \right)} \end{matrix}\quad$ 0.99 0.99

The observation regarding the dominant constellation is essential to obtain a suboptimal algorithm.

Table 2 describes a ratio of average subchannel gains α_(k) ²(l) and {overscore (α)}_(k) ²(l). This ratio had only a small variation. Accordingly, this ratio will also be useful for the suboptimal algorithm.

When R₁=R₂=R₃=R₄=128 in the multiuser-MISO/OFDMA system and the single-user-MIMO/OFDMA system, Tables 4 and 5 show the resulting number of subchannels allocated to each user terminal and the number of bits allocated to each subchannel. TABLE 4 γ(dB) User k # of assigned MIMO subchannels # of MIMO subchannels with c_(k)(n) = i bits i = 2 i = 4 i = 6 i = 8 i = 10 $\begin{matrix} {Ratio} \\ \frac{\alpha_{k}^{2}}{{\overset{\_}{\alpha}}_{k}^{2}} \end{matrix}\quad$ 0 1 33  2   31   0   0   0 0.83 2 30  0   26   4   0   0 0.76 3 32  6   20   6   0   0 0.75 4 33  2   31   0   0   0 0.81 Total 128  10  108  10   0   0 30 1 54  44  10   0   0   0 0.88 2 32  7   18   7   0   0 0.80 3 21  0   5  10   6   0 0.89 4 20  0   1  14   5   0 0.87 Total 127  51   34  31  11   0

TABLE 5 γ(dB) MIMO subchannel group User k # of assigned MIMO subchannels # of MIMO subchannels with c_(k)(n, l) = i bits i = 2 i = 4 i = 6 i = 8 i = 10 $\begin{matrix} {Ratio} \\ \frac{\alpha_{k}^{2}(l)}{{\overset{\_}{\alpha}}_{k}^{2}(l)} \end{matrix}\quad$ 0 l = 1 1 19  0  14   5   0   0 0.87 2 16  0   3  13   0   0 0.82 3 14  0   3  11   0   0 0.74 4 15  0   4  11   0   0 0.71 Total 64  0  24  40   0   0 l = 2 1 19  17   2   0   0   0 0.66 2 16  13   3   0   0   0 0.60 3 14  3  11   0   0   0 0.47 4 14  5   9   0   0   0 0.62 Total 63  38  25   0   0   0 30 l = 1 1 38  17  21   0   0   0 0.83 2 11  0   0   8   3   0 0.90 3 8  0   0   0   5   3 0.84 4 7  0   0   0   0   7 0.96 Total 64  17  21   8   8  10 l = 2 1 5  5   0   0   0   0 0.40 2 11  0   5   6   0   0 0.43 3 8  0   0   3   5   0 0.54 4 7  0   0   1   4   2 0.64 Total 31  5   5  10   9   2

We can also find the same observation regarding the dominant constellation and the ratio between average subchannel gains as in the multiuser-MIMO/OFDMA system. c_(k) denotes the dominant constellation in the multiuser-MISO/OFDMA system.

When γ=0 dB, c₁=4 because 31 out of 33 subchannels were loaded 4 bits. The remaining two subchannels were loaded 2 bits (refer to Table 4). Accordingly, the dominant constellation for each user terminal k can be found. From Table 5, the dominant constellation c_(k)(l) in the single-user-MIMO/OFDMA system can also be determined. Further, in Table 5, ratios between average subchannel gains only have a small variation.

Suboptimal Subchannel and Bit Allocation

A preferred embodiment of the present invention separates the subchannel and bit allocation problem into two steps to reduce complexity.

In the first step, subchannels are allocated under the assumption of dominant constellation.

Dominant Constellation of Multiuser-MIMO/OFDMA ${c_{k}\left( {n,l} \right)} = \left\{ \begin{matrix} {{c_{k}(l)},} & {{{if}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,p,c} \right)}}}} = 1} \\ {0,} & {{otherwise}.} \end{matrix} \right.$

Dominant Constellation of Multiuser-MISO/OFDMA ${c_{k}(n)} = \left\{ \begin{matrix} {c_{k},} & {{{if}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,p,c} \right)}}}} = 1} \\ {0,} & {{otherwise}.} \end{matrix} \right.$

Dominant Constellation of Single-User-MIMO/OFDMA ${c_{k}\left( {n,l} \right)} = \left\{ \begin{matrix} {{c_{k}(l)},} & {{{if}\quad{\sum\limits_{c = 1}^{C}{\rho_{k}\left( {n,l,c} \right)}}} = 1} \\ {0,} & {{otherwise}.} \end{matrix} \right.$

In the second step, bits are distributed to subchannels allocated in the first step. Accordingly, the assumption in the first step is not assumed in this step. The subchannel allocation in the first step can be performed via suboptimal algorithms, while the bit allocation in the second step can adopt a greedy algorithm. By separately performing subchannel and bit allocation, this yields a suboptimal algorithm that is considerably simpler to implement than the optimal IP approach.

Subchannel Allocation

Using the dominant constellation of the multiuser-MIMO/OFDMA, the optimal subchannel allocation problem in the first step can be expressed as shown in Equation 6. $\begin{matrix} {{P_{T} = {{\sum\limits_{n = 1}^{N}{\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{{{g_{k}\left( {n,p} \right)} \cdot {\delta_{k}\left( {n,p} \right)}}\quad{for}\quad{\delta_{k}\left( {n,p} \right)}}}}} \in \left\{ {0,1} \right\}}}{{{\sum\limits_{k = 1}^{K}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}} = 2},{\forall n}}{{{\sum\limits_{n = 1}^{N}{\delta_{k}\left( {n,p} \right)}} \leq N},{\forall k},p}{{{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}} = r_{k}},{\forall k}}{{{\delta_{k}\left( {n,p} \right)} = {\delta_{p}\left( {n,k} \right)}},{\forall k},n,p}} & (6) \end{matrix}$

In Equation (6), ${g_{k}\left( {n,p} \right)} = {\sum\limits_{l = 1}^{N_{R}}\frac{f_{k}\left( {c_{k}(l)} \right)}{\alpha_{k}^{2}\left( {n,l,p} \right)}}$ and ${r_{k} = \frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}}},$ and ${{\sum\limits_{n = 1}^{N}{\delta_{k}\left( {n,p} \right)}} \leq N},{\forall k},p$ is an auxiliary constraint, which is always true due to δ_(k)(n,p)ε{0,1}. The auxiliary constraint is included for the purpose of finding a useful observation. Equation (6) is considerably simpler than the original IP of Equation (3).

Furthermore, an efficient heuristic algorithm can be found for the following observation.

Observation 1: Suppose that {c_(k)(l)} are known. Then, {f_(k)(c_(k)(l))} becomes known and Equation (6) takes the form of a transportation problem that can be relaxed to linear programming (LP).

In Equation (6), the combination of two user terminals k and p, {(k,p)}, is supplied to each subcarrier depending on the costs {g_(k)(n,p)}. δ_(k)(n,p) is the number of units shipped from the combination (k,p) to the n-th subcarrier if the k-th and p-th users occupy two SDMA subchannels of the n-th subcarrier. The constraints in Equation (6) are the demand and supply constraints, respectively, of the transportation problem.

In the case of transportation, it is straightforward to show that IP is relaxed to LP.

In addition, there are efficient heuristic algorithms. One such algorithm is known as Vogel's method capable of being modified to take account of the additional constraints of ${{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}} = r_{k}},{\forall k}$ and δ_(k)(n,p)=δ_(p)(n,k), ∀k,n,p in Equation (6), even though the whole optimization in Equation (6) cannot be relaxed to LP. In the suboptimal algorithm in accordance with the present invention, the problem is solved using the modified Vogel's method.

Before solving the optimization problem in the first step, {c_(k)(l)} in the dominant constellation can be obtained during an initial phase. Evaluation of {c_(k)(l)} requires the following assumption on the channel gain: ${\alpha_{k}^{2}\left( {n,l,p} \right)} = \left\{ {\begin{matrix} {{\alpha_{k}^{2}(l)},} & {{{if}\quad{\delta_{k}\left( {n,p} \right)}} = 1} \\ {0,} & {otherwise} \end{matrix},} \right.$ where α_(k) ²(l) is the average of all subchannel gains associated with the k-th user and MIMO subchannel group l.

Under the above assumption, Equation (6) can be simplified as shown in Equation (7). $\begin{matrix} {{P_{T} = {\sum\limits_{k = 1}^{K}{\sum\limits_{l = 1}^{N_{R}}{\frac{f_{k}\left( {c_{k}(l)} \right)}{\alpha_{k}^{2}(l)} \cdot \frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}}}}}},{{{Constraint}\text{:}\quad{\sum\limits_{k = 1}^{K}\frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}}}} = {2N}}} & (7) \end{matrix}$ where $\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\delta_{k}\left( {n,p} \right)}}$ is replaced with ${R_{k}/{\sum\limits_{l = 1}^{N_{R}}\quad{c_{k}(l)}}},$ due to the constraint of ${{\sum\limits_{n = 1}^{N}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}\quad{\delta_{k}\left( {n,p} \right)}}} = r_{k}},{\forall k}$ in Equation (6).

The solution {c*_(k)(l)} of Equation (7) can be obtained by introducing a Lagrange multiplier μ and using a numerical technique, such as vector-form Newton's method. Although the obtained {c*_(k)(l)} are not integers, they can still be used for the optimization in Equation (6).

The optimization in Equation (6) is an IP problem with much computational load.

As described above, to reduce the load, a heuristic subchannel allocation algorithm is developed by modifying Vogel's method. The modification is to put the additional constraints of ${{\sum\limits_{n = 1}^{N}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}\quad{\delta_{k}\left( {n,p} \right)}}} = r_{k}},{\forall k}$ and δ_(k)(n,p)=δ_(p)(n,k), ∀k,n,p in Equation (6) into the suitable steps of Vogel's method.

To describe the heuristic algorithm, the following notations are necessary: S and U denotes sets of subcarrier and user indices, respectively. These sets are defined in Equation (8) and Equation (9). S⊂{1,2, . . . , N}  (8) U⊂{(k,p)|k=1, . . . ,K, p=1, . . . , K, k≠p}  (9)

P_(n) is the penalty defined as the difference between the two smallest cost values in {g_(m)(n,p)|k=1, . . . , K, p=1, . . . , K, k≠p}. More specifically, P_(n)=g_(k) ⁽²⁾(n,p)−g_(k) ⁽¹⁾(n, p), where g_(k) ^((i))(n, p) denotes the i-th smallest value among {g_(k)(n,p)|k=1, . . . , K, p=1, . . . , K, k≠p}. At the beginning, S={1,2, . . . , N} and U={(k,p)|k=1, . . . , K, p=1, . . . , K, k≠p}. The heuristic algorithm is stated as follows:

Initialization

-   -   Set δ_(k)(n,p) to zero for all k, n, and p.     -   Subcarrier index set S={1,2, . . . ,N}     -   Subcarrier index set {(k,p)|k=1, . . . , K, p=1, . . . , K,         k≠p}.     -   Calculate initial penalties {P_(n)|=1, . . . , N}.

Iteration

-   -   Repeat the following operations until S becomes the null set φ.     -   {circumflex over (n)}=arg max_(nεS)P_(n)     -   ({circumflex over (k)},{circumflex over (p)})=arg         min_((k,p)εU)g_(k)({circumflex over (n)},p)     -   Set δ_({circumflex over (k)})({circumflex over (n)},{circumflex         over (p)}) to one. δ_({circumflex over (p)})({circumflex over         (n)},{circumflex over (k)}) also becomes one due to         δ_(k)(n,p)=δ_(p)(n,k), ∀k,n,p.     -   Then S=S−{{circumflex over (n)}} since         ${{\sum\limits_{k = 1}^{K}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}\quad{\delta_{k}\left( {n,p} \right)}}} = 2},{\forall n}$         is met.     -   If         ${{\sum\limits_{n = 1}^{N}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}\quad{\delta_{k}\left( {n,p} \right)}}} = r_{k}},{\forall k}$         is satisfied, then U=U−{({circumflex over (k)},{circumflex over         (p)})} and update the penalties for the subcarriers whose         indices are in the set S.

For each iteration of this algorithm, the size of the subcarrier index set S is reduced by one, due to the constraints of ${{\sum\limits_{k = 1}^{K}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}\quad{\delta_{k}\left( {n,p} \right)}}} = 2},{\forall n}$ and δ_(k)(n,p)=δ_(p)(n,k), ∀k,n,p in Equation (6). The user index set U is reduced and the penalty {P_(n)} is updated, whenever the constraint of ${{\sum\limits_{n = 1}^{N}\quad{\sum\limits_{{p = 1},{p \neq k}}^{K}\quad{\delta_{k}\left( {n,p} \right)}}} = r_{k}},{\forall k}$ in Equation (6) is satisfied for a certain k.

In summary, the subchannel allocation for the suboptimal approach in accordance with the present invention is as follows:

Heuristic

Step 1: Evaluate real-valued {c*_(k)(l)} from Equation (7) using the vector-form Newton's method.

Step 2: Substitute {c*_(k)(l)} for {c_(k)(l)} in Equation (6) and solve Equation (6) using the above-described modified Vogel's method to obtain {δ_(k)(n,p)}.

The overall heuristic algorithm for subchannel allocation requires O(K²) operations for one iteration of the vector-form Newton's method, and requires O(NK⁴) operations for the heuristic algorithm. This is a polynomial-time algorithm that can be applied to real-time multiuser-MIMO/OFDMA systems.

Except for the values of ${g_{k}\left( {n,p} \right)} = \frac{f_{k}\left( c_{k} \right)}{\alpha_{k}^{2}\left( {n,p} \right)}$ and ${r_{k} = \frac{R_{k}}{c_{k}}},$ the channel allocation method in the multiuser-MISO/OFDMA system is the same as the optimization method in Equation (6). Accordingly, the proposed heuristic algorithm can be applied to the multiuser-MISO/OFDMA system. $\begin{matrix} {{P_{T} = {\sum\limits_{n = 1}^{N}\quad{\sum\limits_{k = 1}^{K}\quad{g_{k}(n)}}}}{\cdot {\delta_{k}(n)}}{{{Constraints}:{{\delta_{k}(n)} \in \left\{ {0,1} \right\}}},{{\sum\limits_{k = 1}^{K}\quad{\delta_{k}(n)}} = 1},{\forall n}}{{{\sum\limits_{n = 1}^{N}\quad{\delta_{k}(n)}} = r_{k}},{\forall k}}} & (10) \end{matrix}$

-   -   where         ${g_{k}(n)} = {\sum\limits_{l = 1}^{N_{R}}\frac{f_{k}\left( {c_{k}(l)} \right)}{\alpha_{k}^{2}\left( {n,l} \right)}}$         and         $r_{k} = {\frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}}.}$         This is again an IP problem, but it is considerably simpler than         the original IP in Equation (5).

Furthermore, we can find some suboptimal algorithms for this problem due to the following observation:

Observation 2: Suppose that {c_(k)(l)} are known. Then, {f_(k)(c_(k)(l))} become known and Equation (10) takes the form of a transportation problem that can be relaxed to linear programming (LP).

In Equation (10), N subcarriers are supplied to K users depending on the costs {g_(k)(n)}. δ_(k)(n) is the number of units shipped from the n-th subcarrier to the k-th user. The constraints of ${{\sum\limits_{k = 1}^{K}{\delta_{k}(n)}} = 1},{\forall n}$ and ${{\sum\limits_{n = 1}^{N}{\delta_{k}(n)}} = r_{k}},$ ∀k in Equation (10) are the supply and demand constraints, respectively, of the transportation problem. As described above, a transportation problem can be solved by LP relaxation and Vogel's method.

Before solving the optimization problem in the first step, {c_(k)(l)} can be obtained during an initial phase.

Evaluation of {c_(k)(l)} requires the following assumption on the channel gain: ${\alpha_{k}^{2}\left( {n,l} \right)} = \left\{ {\begin{matrix} {{\alpha_{k}^{2}(l)},} & {{{if}\quad{\delta_{k}(n)}} = 1} \\ {0,} & {otherwise} \end{matrix},} \right.$

-   -   where α_(k) ²(l) is the average of all subchannel gains         associated with the k-th user and MIMO subchannel group l.

Under the above assumption, the optimization problem in Equation (10) can be simplified as shown in Equation (11). $\begin{matrix} {\begin{matrix} {P_{T} = {\sum\limits_{k = 1}^{K}{\sum\limits_{l = 1}^{N_{R}}{\frac{f_{k}\left( {c_{k}(l)} \right)}{\alpha_{k}^{2}(l)} \cdot \frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}}}}}} \\ {{{Constraint}\text{:}\quad{\sum\limits_{k = 1}^{K}\frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}}}} = N} \end{matrix},} & (11) \end{matrix}$

-   -   where $\sum\limits_{n = 1}^{N}{\delta_{k}(n)}$         is replaced with         $\frac{R_{k}}{\sum\limits_{l = 1}^{N_{R}}{c_{k}(l)}},$         due to the constraint of         ${{\sum\limits_{n = 1}^{N}{\delta_{k}(n)}} = r_{k}},{\forall k}$         in Equation (10). Thereafter, the solution {c*_(k)(l)} of         Equation (11) can be obtained by introducing a Lagrange         multiplier μ and using a numerical technique, such as         vector-form Newton's method.

Finally, the suboptimal approaches to the subchannel allocation in the single-user-MIMO/OFDMA system in accordance with the present invention are as follows:

Suboptimal LP

Step 1: Evaluate real-valued {c*_(k)(l)} from Equation (11) using the vector-form Newton's method.

Step 2: Substitute {c*_(k)(l)} for {c_(k)(l)} in Equation (10) and solve Equation (10) using LP after dropping the integer constraints from {δ_(k)(n, p)} in order to obtain {δ_(k)(n,p)}.

Heuristic

Step 1: Evaluate real-valued {c*_(k)(l)} from Equation (11) using the vector-form Newton's method.

Step 2: Substitute {c*_(k)(l)} for {c_(k)(l)} in Equation (10) and solve Equation (10) using Vogel's method to obtain {δ_(k)(n,p)}.

The computational load required by Vogel's method is O(NK²), while the computation load for LP is O(N⁴). Because usually N>>K, Vogel's method is considerably simpler to implement than LP.

The overall heuristic algorithm for subchannel allocation requires O(K²) operations for one iteration of the vector-form Newton's method, and requires O(NK²) operations for the heuristic algorithm. This is a polynomial-time algorithm that can be applied to real-time single-user-MIMO/OFDMA systems.

Bit Allocation

The bit allocation problem in the multiuser-MIMO/OFDMA system can be expressed as shown in Equation (12). $\begin{matrix} {\begin{matrix} {P_{T} = {\sum\limits_{k = 1}^{K}\left\lbrack {\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{l = 1}^{N_{R}}{\frac{f_{k}\left( {c_{k}\left( {n,l} \right)} \right)}{\alpha_{k}^{2}\left( {n,l,p} \right)} \cdot {\delta_{k}\left( {n,p} \right)}}}}} \right\rbrack}} \\ {{{{Constraint}\text{:}\quad R_{k}} = {\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{l = 1}^{N_{R}}{{c_{k}\left( {n,l} \right)} \cdot {\delta_{k}\left( {n,p} \right)}}}}}},{\forall k}} \end{matrix},} & (12) \end{matrix}$

-   -   where only {c_(k)(n,l)ε{0, . . . , C}} are treated as variables         since {δ_(k)(n,p)} are already determined through the subchannel         allocation.

Equation (12) reveals that the bit allocation for each user can be independently performed. Under the constraint $\begin{matrix} \begin{matrix} {{R_{k} = {\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{l = 1}^{N_{R}}{{c_{k}\left( {n,l} \right)} \cdot {\delta_{k}\left( {n,p} \right)}}}}}},} & {{\forall k},} \end{matrix} \\ {\sum\limits_{k = 1}^{K}\left\lbrack {\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\sum\limits_{l = 1}^{N_{R}}{\frac{f_{k}\left( {c_{k}\left( {n,l} \right)} \right)}{\alpha_{k}^{2}\left( {n,l,p} \right)} \cdot {\delta_{k}\left( {n,p} \right)}}}}} \right\rbrack} \end{matrix}$ for each k is minimized, and the total power P_(T) is eventually minimized. This fact indicates that the bit allocation for each user can be performed as in the case of single-user OFDM. Accordingly, it is possible to apply the greedy algorithm proposed for single-user OFDM.

Equations (13) and (14) are the bit allocation problems of multiuser-MISO/OFDMA and single-user-MIMO/OFDMA systems, respectively. $\begin{matrix} {P_{T} = {\sum\limits_{k = 1}^{K}\left\lbrack {{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}\frac{f_{k}\left( {c_{k}(n)} \right)}{\alpha_{k}^{2}\left( {n,p} \right)}}}{\cdot {\delta_{k}\left( {n,p} \right)}}} \right\rbrack}} & (13) \\ \begin{matrix} {{{{Constraint}\text{:}\quad R_{k}} = {\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{{c_{k}(n)} \cdot {\delta_{k}\left( {n,p} \right)}}}}},} & {\forall k} \end{matrix} & \quad \\ {P_{T} = {\sum\limits_{k = 1}^{K}\left\lbrack {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{\frac{f_{k}\left( {c_{k}\left( {n,l} \right)} \right)}{\alpha_{k}^{2}\left( {n,l} \right)} \cdot {\delta_{k}(n)}}}} \right\rbrack}} & (14) \\ \begin{matrix} {{{{Constraint}\text{:}\quad R_{k}} = {\sum\limits_{n = 1}^{N}{\sum\limits_{l = 1}^{N_{R}}{{c_{k}\left( {n,l} \right)} \cdot {\delta_{k}(n)}}}}},} & {\forall k} \end{matrix} & \quad \end{matrix}$

Like the case of the multiuser-MIMO/OFDMA system, Equations (13) and (14) are also solved using the greedy algorithm.

The bit allocation for multiuser-MIMO/OFDMA and multiuser-MISO/OFDMA systems requires O(NK²) operations, while the bit allocation for single-user-MIMO/OFDMA needs O(NK) operation.

The optimal IP and suboptimal algorithm were examined. For comparison, also considered were the random algorithm where subchannels were randomly allocated and bits were allocated by the greedy algorithm. Accordingly, the parameters were the same as those in Table 1.

For the multiuser-MIMO/OFDMA system, the simulation results were the average of 100 trials.

Table 6 shows the resulting transmission power for various {R₁,R₂,R₃,R₄} and γε{0,30}[dB]. TABLE 6 γ Bits/OFDM symbol Optimal IP Heuristic Random (dB) R₁ R₂ R₃ R₄ (dB) (dB) (dB) 0 256 256 256 256 39.93 40.24 42.93 128 128 384 384 40.38 40.93 43.10 64 64 448 448 41.03 41.56 43.31 30 256 256 256 256 55.92 57.86 62.41 128 128 384 384 50.74 52.20 57.08 64 64 448 448 46.71 48.01 53.31

As expected, the optimal IP yielded the minimum P_(T) for all cases. The P_(T) values from the suboptimal algorithm were reasonably close to the minimum values. The performance gap between the optimal IP and the suboptimal algorithm did not exceed 0.55 dB, when γ=0 dB, and 1.94 dB, when γ=30 dB. The random algorithm was worse than the others. That is, the maximum additionally required power was 3.00 dB, when γ=0 dB, and 6.60 dB, when γ=30 dB.

To further examine the performance degradation of the algorithms against the optimal IP, additional experiments with the optimal IP were performed for various {R₁,R₂,R₃R₄}.

Table 7 describes the data rates obtained by the additionally required power of the heuristic and random algorithms with respect to the optimal IP. TABLE 7 γ Bits/OFDM symbol Optimal IP (dB) R₁ R₂ R₃ R₄ (dB) 0 256 256 256 256 39.93 262 262 262 262 40.24 316 316 316 316 42.93 128 128 384 384 40.38 140 140 396 396 40.93 186 186 442 442 43.10 64 64 448 448 41.03 76 76 460 460 41.56 116 116 500 500 43.31 30 256 256 256 256 55.92 306 306 306 306 57.86 424 424 424 424 62.41 128 128 384 384 50.74 150 150 406 406 52.20 246 246 502 502 57.08 64 64 448 448 46.71 78 78 464 464 48.01 148 148 532 532 53.31

For example, when γ=0 dB, 40.24 dB, which was needed for {256,256,256,256} using the heuristic algorithm in Table 6, achieved {262,262,262,262} with the optimal IP. The performance degradation of the heuristic algorithm was less than 12 bits/OFDM symbol per user, when γ=0 dB, and was less than 50 bits/OFDM symbol per user, when γ=30 dB. In the case of random algorithm, the maximum loss was 60 bits/OFDM symbol per user, when γ=0 dB, and 128 bits/OFDM symbol per user, when γ=30 dB.

As indicated above, the simulation results for the multiuser-MISO/OFDMA systems were the average of 100 trials.

Table 8 shows the resulting transmission power P_(T) for various {R₁,R₂,R₃,R₄} and γε{0,30}[dB]. TABLE 8 γ Bits/OFDM symbol Optimal IP Heuristic Random (dB) R₁ R₂ R₃ R₄ (dB) (dB) (dB) 0 128 128 128 128 38.28 38.84 42.71 64 64 192 192 38.93 39.92 42.86 32 32 224 224 39.87 40.83 43.18 30 128 128 128 128 55.15 56.70 62.02 64 64 192 192 50.12 51.67 57.02 32 32 224 224 46.40 47.74 53.48

As expected, the optimal IP showed the minimum P_(T) for all cases. The P_(T) values from the suboptimal algorithm were reasonably close to the minimum values. The performance gap between the optimal IP and the suboptimal algorithm was less than 0.99 dB, when γ=0 dB, and 1.55 dB, when γ=30 dB. The random algorithm was worse than the others. That is, the maximum additionally required power was 3.93 dB, when γ=0 dB, and 7.08 dB, when γ=30 dB.

For the single-user-MIMO/OFDMA system, the simulation results were the average of 20 trials.

The resulting transmission power P_(T) is shown in Table 9. TABLE 9 Optimal Subop- Heu- Ran- γ Bits/OFDM symbol IP timal ristic dom (dB) R₁ R₂ R₃ R₄ (dB) LP (dB) (dB) (dB) 0 128 128 128 128 37.05 37.24 37.30 40.57 64 64 192 192 37.24 37.46 37.56 41.06 32 32 224 224 37.56 37.80 37.84 40.82 30 128 128 128 128 52.52 53.11 53.41 55.95 64 64 192 192 47.42 47.49 48.43 52.59 32 32 224 224 43.36 43.70 44.29 49.79

In Table 9, the optimal IP yielded the minimum P_(T) for all cases. The P_(T) values from the suboptimal algorithms were reasonably close to the minimum values. The performance gap between the optimal IP and the suboptimal LP algorithm did not exceed 0.24 dB, when γ=0 dB, and did not exceed 0.59 dB, when γ=30 dB. In the case of the heuristic algorithm, the gap was less than 0.32 dB, when γ=0 dB, and was less than 0.01 dB, when γ=30 dB. The random algorithm was worse than the others. That is, the maximum additionally required power was 3.82 dB, when γ=0 dB, and 6.43 dB, when γ=30 dB.

To compare the performance of the above three systems, additional simulations were performed when all systems has the same number of subchannels. The parameters were shown in Table 10 and the heuristic algorithm was applied. TABLE 10 Multiuser- Multiuser- Single-user- MIMO/OFDMA MISO/OFDMA MIMO/OFDMA N_(T) 4 4 4 N_(R) 2 1 4 M 2 4 1 # of FFT (N) 64 64 64 Total # of 256 256 256 subchannels # of users (K) 4  # of max. bits (C) 12 Required BER   10⁻⁴ Channel 8-tap frequency selective Rayleigh fading chan- nels with exponentially decaying power profiles were assumed. The channel parameters were fixed during one frame period. The average channel magnitudes of the different users were generally unequal and the difference, denoted by γ, between the strongest and weakest channels of the four users was either zero or 30 dB.

In Table 10, the simulation results were the average of 100 trials.

Table 11 shows the resulting transmission power P, for various {R₁,R₂,R₃,R₄} and γε{0,30}[dB]. TABLE 11 γ Bits/OFDM symbol Multiuser-MIMO/ Multiuser-MISO/ Single-user-MIMO/ (dB) R₁ R₂ R₃ R₄ OFDMA (dB) OFDMA (dB) OFDMA (dB) 0 256 256 256 256 40.28 44.93 38.52 128 128 384 384 41.06 48.41 38.79 64 64 448 448 41.70 51.29 38.90 30 256 256 256 256 57.88 64.46 54.26 128 128 384 384 52.35 57.22 49.29 64 64 448 448 48.09 53.53 45.68

As shown in Table 11, the single-user-MIMO/OFDMA, which has the maximum number of receiver antennas, yielded the minimum P_(T) and the multiuser-MISO/OFDMA, which has the minimum number of receiver antennas, yielded the maximum P_(T). The performance gap between the single-user-MIMO/OFDMA and the multiuser-MIMO/OFDMA did not exceed 2.8 dB, when γ=0 dB, and did not exceed 3.62 dB, when γ=30 dB. The multiuser-MISO/OFDMA was worse than the others. That is, the maximum additionally required power was 12.39 dB, when γ=0 dB, and 10.20 dB, when γ=30 dB.

FIG. 3 is a flow chart illustrating a subchannel and bit allocation method in accordance with the present invention. As illustrated in FIG. 3, the subchannel and bit allocation method computes channel gain and transmission rate information using feedback information from terminals in Step S301, and computes an average channel gain according to a computed channel gain for each user in Step S302. When the average channel gain for each user has been determined, the average number of bits to be allocated to a corresponding user is determined in Step S303. The number of subchannels to be allocated to each user is determined in Step S304. Subchannels are allocated to each user according to the determined number of subchannels in Step S305.

After the subchannels are allocated to each user, a modulation scheme is determined on a channel-by-channel basis in Step S306.

As is apparent from the description above, the subchannel and bit allocation method for multiuser-MIMO/OFDMA systems (including its special systems) in accordance with the present invention can optimize subchannel and bit allocation using IP. Further, the subchannel and bit allocation method in accordance with the present invention can obtain the performance close to that of the optimal IP algorithm using an efficient suboptimal algorithm for separately performing a subchannel and bit allocation process.

Additionally, the subchannel and bit allocation method in accordance with the present invention can considerably improve frequency use efficiency as well as a power gain by adaptively allocating subchannels and bits according to channel environments, as compared with a system using a fixed modulation scheme.

While the present invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the appended claims. 

1. A resource allocation method in a multiple-input multiple-output/orthogonal frequency division multiple access (MIMO/OFDMA) system including a base station for transmitting signals through a plurality of transmitter antennas, and a plurality of terminals for receiving the signals through receiver antennas, the method comprising: determining a number of subchannels for each user according to a channel environment; and allocating a modulating scheme for each subchannel according to the determined number of subchannels.
 2. The resource allocation method according to claim 1, wherein the step of determining the number of subchannels comprises: receiving feedback information from the terminals; determining a channel gain and a transmission rate for each user, using the feedback information; computing an average channel gain for each user according to the channel gain; determining an average number of bits for each user according to the average channel gain; and computing the number of subchannels for each user according to the average number of bits for each user.
 3. The resource allocation method according to claim 2, wherein the step of allocating the modulation scheme comprises: allocating at least one subchannel to each user according to the number of subchannels for each user; and determining the modulation scheme for each of the at least one subchannel while taking into account the average number of bits and the number of subchannels for each user.
 4. The resource allocation method according to claim 3, wherein the channel environment includes at least one of a multiuser-MIMO/OFDMA environment, a multiuser-multiple-input single-output (MISO)/OFDMA environment, and a single-user MIMO/OFDMA environment.
 5. The resource allocation method according to claim 4, wherein the average channel gain for each user in the multiuser-MIMO/OFDMA environment is computed by: ${{\alpha_{k}^{2}(l)} = {\frac{1}{N\left( {K - 1} \right)}{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\alpha_{k}^{2}\left( {n,l,p} \right)}}}}},$ where K is a total number of users, N is a total number of subcarriers, k and p are user indices, and l is a MIMO subchannel index.
 6. The resource allocation method according to claim 4, wherein the average channel gain for each user in the multiuser-MISO/OFDMA environment is computed by: ${{\alpha_{k}^{2}(l)} = {\frac{1}{N\left( {K - 1} \right)}{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\alpha_{k}^{2}\left( {n,p} \right)}}}}},$ where K is a total number of users, N is a total number of subcarriers, and k and p are user indices.
 7. The resource allocation method according to claim 4, wherein the average channel gain for each user in the single-user-MIMO/OFDMA environment is computed by: ${{\alpha_{k}^{2}(l)} = {\frac{1}{N}{\sum\limits_{n = 1}^{N}{\alpha_{k}^{2}\left( {n,l} \right)}}}},$ where N is a total number of subcarriers, and l is a MIMO subchannel index.
 8. The resource allocation method according to claim 3, wherein the average channel gain for each user is computed by: ${\alpha_{k}^{2}(l)} = {\frac{1}{N\left( {K - 1} \right)}{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\alpha_{k}^{2}\left( {n,l,p} \right)}}}}$ in a multiuser-MIMO/OFDMA environment, is computed by: ${\alpha_{k}^{2}(l)} = {\frac{1}{N\left( {K - 1} \right)}{\sum\limits_{n = 1}^{N}{\sum\limits_{{p = 1},{p \neq k}}^{K}{\alpha_{k}^{2}\left( {n,p} \right)}}}}$ in a multiuser-multiple-input single-output (MISO)/OFDMA environment, and is computed by: ${\alpha_{k}^{2}(l)} = {\frac{1}{N}{\sum\limits_{n = 1}^{N}{\alpha_{k}^{2}\left( {n,l} \right)}}}$ in a single-user-MIMO/OFDMA environment, where K is a total number of users, N is a total number of subcarriers, k and p are user indices, and l is a MIMO subchannel index.
 9. The resource allocation method according to claim 3, wherein the number of subchannels for each user is computed using Vogel's method, which is modified such that additional constraints are taken into account in a multiuser-MIMO/OFDMA environment, and a multiuser-multiple-input single-output (MISO)/OFDMA environment.
 10. The resource allocation method according to claim 3, wherein the number of subchannels for each user is computed using Vogel's method in a single-user-MIMO/OFDMA environment.
 11. The resource allocation method according to claim 1, wherein the step of allocating the modulation scheme comprises: allocating at least one subchannel to each user according to the number of subchannels for each user; and determining the modulation scheme for each of the at least one subchannel.
 12. The resource allocation method according to claim 1, wherein the channel environment includes at least one of a multiuser-MIMO/OFDMA environment, a multiuser-multiple-input single-output (MISO)/OFDMA environment, and a single-user-MIMO/OFDMA environment.
 13. The resource allocation method according to claim 1, wherein the number of subchannels for each user is computed using Vogel's method, which is modified such that additional constraints are taken into account in a multiuser-MIMO/OFDMA environment.
 14. The resource allocation method according to claim 1, wherein the number of subchannels for each user is computed using Vogel's method, which is modified such that additional constraints are taken into account in a multiuser-multiple-input single-output (MISO)/OFDMA environment.
 15. The resource allocation method according to claim 1, wherein the number of subchannels for each user is computed using Vogel's method, which is modified such that additional constraints are taken into account in a single-user-MIMO/OFDMA environment. 